#import "head.h"
#import "sprite_game_enemy.h"

@interface SpriteGameEnemyBoss3 : SpriteGameObject
{
	/*box2d
	*/
	b2Fixture *fixtureBoss3Head_;
	b2Fixture *fixtureBoss3Body_;
	b2Fixture *fixtureBoss3Ass_;
}

- (id)initSpriteGameEnemyBoss3;
- (void)draw;
- (void)tickBoss3CreateLeftSlave:(ccTime)Time;
- (void)tickBoss3CreateRightSlave:(ccTime)Time;
- (void)tickBoss3SpecialAttack:(ccTime)Time;

- (void)createBody;
- (void)destroyBody;

- (void)Boss3CreateSlave;

- (void)ActionBoss3Appear;
- (void)ActionBoss3SpecialAttack;
- (void)ActionBoss3SpecialActionEyeOpen;
- (void)ActionBoss3SpecialActionEyeClose;
- (void)ActionBoss3SpecialQteSuccess;
- (void)ActionBoss3SpecialQteFailed;
- (void)ActionBoss3SpecialAttackCharge;
- (void)ActionBoss3StageChange;
- (void)ActionBoss3SlaveDead:(sprite_game_enemy *)Slave;
- (void)ActionBoss3CreateLeftSlave;
- (void)ActionBoss3CreateRightSlave;

- (void)CallBackBoss3ActionAppearMoveOver:(id)Sender;
- (void)CallBackBoss3ActionAppearAniOver:(id)Sender;
- (void)CallBackBoss3ActionSpecialAttackMoveOver:(id)Sender;
- (void)CallBackBoss3ActionEyeOpenAniOver:(id)Sender;
- (void)CallBackBoss3ActionEyeCloseAniOver:(id)Sender;
- (void)CallBackBoss3ActionChargeOver:(id)Sender;
- (void)CallBackBoss3ActionStageChangeOver:(id)Sender;
- (void)CallBackBoss3ActionLaserAttackOver:(id)Sender;

- (void)CallBackBoss3SpecialAttackChildEyeOpenOver:(sprite_game_enemy_eye *)Eye;
- (void)CallBackBoss3SpecialAttackChildEyeCloseOver:(sprite_game_enemy_eye *)Eye;
- (void)CallBackBoss3SpecialAttackChildMaskFadeOutOver:(sprite_game_enemy_mask *)Mask;

@end